﻿using DBCodeBuilder.CodeGeneration;
using DBCodeBuilder.Core.Enum;
using DBCodeBuilder.Core.Models;

namespace DBCodeBuilder.Core.Interfaces
{
    internal interface IMappingGenerator
    {
        string GeneratedClassName { get; }
        string Code { get; }
        string CodeMapping { get; }
        string LogMessage { get; }
        string GetFileStructure(TableModel table, string nameSpace, CodeFileStructure domainOrMapping, string referencedNamespace = null);
        void Generate(string owner, string tableName, MapGenSettings settings);
        void Generate(TableModel md, MapGenSettings settings);
    }
}